package com.dl698.buss;

/**
 * 请求选项类
 * 封装请求配置信息
 * 
 * @author wind
 * @version 1.1.1
 */
public class RequestOption {

    private int requestMode;
    private Object request;
    private int timeout;
    private boolean enableRetry;

    /**
     * 默认构造函数
     */
    public RequestOption() {
    }

    /**
     * 构造函数
     * 
     * @param requestMode 请求模式
     * @param request     请求对象
     */
    public RequestOption(int requestMode, Object request) {
        this.requestMode = requestMode;
        this.request = request;
    }

    /**
     * 获取请求模式
     * 
     * @return 请求模式
     */
    public int getRequestMode() {
        return requestMode;
    }

    /**
     * 设置请求模式
     * 
     * @param requestMode 请求模式
     */
    public void setRequestMode(int requestMode) {
        this.requestMode = requestMode;
    }

    /**
     * 获取请求对象
     * 
     * @return 请求对象
     */
    public Object getRequest() {
        return request;
    }

    /**
     * 设置请求对象
     * 
     * @param request 请求对象
     */
    public void setRequest(Object request) {
        this.request = request;
    }

    /**
     * 获取超时时间
     * 
     * @return 超时时间
     */
    public int getTimeout() {
        return timeout;
    }

    /**
     * 设置超时时间
     * 
     * @param timeout 超时时间
     */
    public void setTimeout(int timeout) {
        this.timeout = timeout;
    }

    /**
     * 是否启用重试
     * 
     * @return true如果启用重试
     */
    public boolean isEnableRetry() {
        return enableRetry;
    }

    /**
     * 设置是否启用重试
     * 
     * @param enableRetry 是否启用重试
     */
    public void setEnableRetry(boolean enableRetry) {
        this.enableRetry = enableRetry;
    }
}